package com.basker.pisces.core.enums;

public enum DataObjectState {
    /**
     * 新增
     * <p>
     * 提交后会执行inset语句
     */
    Added,

    /**
     * 已删除
     * <p>
     * 不存在原来的集合中，提交后会执行delete语句
     */
    Deleted,

    /**
     * 游离
     * <p>
     * 数据新建后，尚未添加到任何一个集合中
     */
    Detached,

    /**
     * 已修改
     * <p>
     * 对于{@link #UnChanged}的数据，更新字段后变为"已修改”状态，提交后会执行update语句
     */
    Modified,

    /**
     * 未做更改
     * <p>
     * <li>从数据库读取时的状态；
     * <li>对象保存后的状态；
     */
    UnChanged,

    /**
     * 没有定义
     *
     * <p>
     * 保存至数据库时无视数据状态的相关功能
     */
    NoDefinition
}